<body></body>
<script>
  const fn = name => {
    console.log('我是', name)
  }
  fn() //   基操

  //  Proxy 去代理函数
  const p2 = new Proxy(fn, {
    apply(target, thisArg, argArray) {
      //   console.log('target ', target) //fn函数
      //   console.log('thisArg ', thisArg) //undefault
      //   console.log('argArray ', argArray) //['yyy']
      target.call(thisArg, ...argArray)
    }
  })
  p2('yyy')

//   //   代码练习
//   const obj = {foo: 1}
//   //   console.log(obj.foo)
//   //   console.log(Reflect.get(obj, 'foo'))
//   console.log(Reflect.get(obj, 'foo', {foo: 2}))
</script>
